package com.nw.dsl4j.generator;

public class FieldInfo {
	private String fieldName;
	private String alias;
	private Class<?> patternClass;
	private Class<?> fieldClass;
	private boolean isToken;
	private boolean isRule; 
	private boolean isFlag;
	private boolean useConverter; 
	private String converterName; 
	private String setter; 
	private String collectionGetter; 
	private String parentSetter;
	private String cardinality; 
	private Class<?> seperatorClass;
	private String mapGetter;
	private String mapKeyField;
	private Class<?> mapKeyClass;
	private String hint;
	private boolean isSingular;
	private boolean isResolution;
	
	public boolean isResolution() {
		return isResolution;
	}
	public void setResolution(boolean isResolution) {
		this.isResolution = isResolution;
	}
	public boolean isSingular() {
		return isSingular;
	}
	public void setSingular(boolean isSingular) {
		this.isSingular = isSingular;
	}
	public String getHint() {
		return hint;
	}
	public void setHint(String hint) {
		this.hint = hint;
	}
	public String getAlias() {
		return alias;
	}
	public String getCardinality() {
		return cardinality;
	}
	public String getCollectionGetter() {
		return collectionGetter;
	}
	public String getConverterName() {
		return converterName;
	}
	public Class<?> getFieldClass() {
		return fieldClass;
	}
	public boolean isRule() {
		return isRule;
	}
	public boolean isToken() {
		return isToken;
	}
	public String getParentSetter() {
		return parentSetter;
	}
	public Class<?> getPatternClass() {
		return patternClass;
	}
	public Class<?> getSeperatorClass() {
		return seperatorClass;
	}
	public String getSetter() {
		return setter;
	}
	public boolean isUseConverter() {
		return useConverter;
	}
	public void setAlias(String alias) {
		this.alias = alias;
	}
	@Override
	public String toString() {
		return "|" + super.toString() + "|";
//		throw new IllegalStateException();
	}
	public void setCardinality(String cardinality) {
		this.cardinality = cardinality;
	}
	public void setCollectionGetter(String collectionGetter) {
		this.collectionGetter = collectionGetter;
	}
	public void setConverterName(String converterName) {
		this.converterName = converterName;
	}
	public void setFieldClass(Class<?> fieldClass) {
		this.fieldClass = fieldClass;
	}
	public void setRule(boolean isRule) {
		this.isRule = isRule;
	}
	public void setToken(boolean isToken) {
		this.isToken = isToken;
	}
	public void setParentSetter(String parentSetter) {
		this.parentSetter = parentSetter;
	}
	public void setPatternClass(Class<?> patternClass) {
		this.patternClass = patternClass;
	}
	public void setSeperatorClass(Class<?> seperatorClass) {
		this.seperatorClass = seperatorClass;
	}
	public void setSetter(String setter) {
		this.setter = setter;
	}
	public void setUseConverter(boolean useConverter) {
		this.useConverter = useConverter;
	}
	public boolean isFlag() {
		return isFlag;
	}
	public void setFlag(boolean isFlag) {
		this.isFlag = isFlag;
	}
	public String getMapGetter() {
		return mapGetter;
	}
	public void setMapGetter(String mapGetter) {
		this.mapGetter = mapGetter;
	}
	public String getMapKeyField() {
		return mapKeyField;
	}
	public void setMapKeyField(String mapKeyField) {
		this.mapKeyField = mapKeyField;
	}
	public Class<?> getMapKeyClass() {
		return mapKeyClass;
	}
	public void setMapKeyClass(Class<?> mapKeyClass) {
		this.mapKeyClass = mapKeyClass;
	}
	public String getFieldName() {
		return fieldName;
	}
	public void setFieldName(String fieldName) {
		this.fieldName = fieldName;
	}
}
